package com.qys.livesMall.shop.modal.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serial;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

import lombok.Data;
import lombok.Getter;
import lombok.Setter;

/**
 * 店铺等级表
 *
 * @author
 * @since 2023-06-06
 */
@Data
@TableName("h2_shop_level")
public class H2ShopLevel implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 等级等级
     */
    @TableId(value = "id", type = IdType.INPUT)
    private Integer id;

    /**
     * 等级名
     */
    private String name;

    /**
     * 等级图标
     */
    private String icon;

    /**
     * 升级条件（下级店铺数量）
     */
    private Integer upgradeConditionNum;

    /**
     * 创建者
     */
    private String createBy;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新者
     */
    private String updateBy;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 等级
     */
    private Integer level;

    /**
     * 下级Id
     */
    private Integer nextLevel;

    /**
     * 保证金
     */
    private BigDecimal earnestMoney;

    /**
     * 先款后货
     */
    private Byte cashBeforeDelivery;

    /**
     * 先货后款
     */
    private Byte deliveryBeforeCash;

    /**
     * 是否允许参加平台活动
     */
    private Byte activityFlag;

    /**
     * 是否允许发起任务
     */
    private Byte sellTaskFlag;

    /**
     * 平台抽成点
     */
    private BigDecimal platformRatio;

    /**
     * 最小收益点
     */
    private BigDecimal minIncomeRatio;
    /**
     * 最大收益点
     */
    private BigDecimal maxIncomeRatio;

    /**
     * 最小采购数
     */
    private Integer purchaseMinNum;

    /**
     * 最小采购金额
     */
    private BigDecimal purchaseMinAmount;
    /**
     * 最大采购金额
     */
    private BigDecimal purchaseMaxAmount;

    /**
     * 月采购额度
     */
    private BigDecimal purchaseQuota;

    /**
     * 收益天数
     */
    private Integer incomeDays;

    /**
     * 升级奖励
     */
    private BigDecimal upgradeReward;

}
